#ifndef __SG90_CONFIG_H
#define __SG90_CONFIG_H

#include "stm32f10x.h"
#include "Delay.h"

/**
  ******************************************************************************
  * @brief  SG90舵机初始化
  * @param  无
  * @retval 无
  * @note   初始化TIM3通道2输出PWM信号，默认配置：
  *         - 频率50Hz（周期20ms）
  *         - 初始位置0°
  *         - 使用PB5引脚（需配置重映射）
  ******************************************************************************
  */
void SG90_Config(void);

/**
  ******************************************************************************
  * @brief  设置PWM频率和占空比
  * @param  Freq: PWM信号频率（单位Hz，典型值50）
  * @param  Duty: 脉冲宽度值（5=0.5ms, 25=2.5ms）
  * @retval 无
  * @note   实际脉宽范围应限制在5-25之间（0°-180°）
  *         频率不建议超过50Hz（标准舵机控制频率）
  ******************************************************************************
  */
void SG90_Set_Freq_Duty(u32 Freq, u32 Duty);

/**
  ******************************************************************************
  * @brief  舵机旋转测试（0°→180°往复运动）
  * @param  无
  * @retval 无
  * @note   演示功能：
  *         1. 从0°逐步转到180°
  *         2. 每个位置停留500ms
  *         3. 到达极限位置后反向运动
  ******************************************************************************
  */
void SG90_Turn(void);

#endif